System and method for manipulating information and map for geographical resource management

ABSTRACT

The present invention provides a system that applies the latest technology related to compression, rendering, and geographical data processing to present an interactive interface to users, which enables them to efficiently manipulate maps and queries for information over the World Wide Web. The method includes a World Wide Web application to display GIS information and obtains user input, and a server application to process user input and to communicate with the database to retrieve or store data.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to image compression using wavelettransforms, spatial database, metadata and geographical informationsystem (GIS)

[0003] 2. Description of the Prior Art

[0004] GIS software has a variety of functionality including panning andzooming of geographic maps, querying information from a database, andperforming geographic analysis. Such functionality typically requires ahighend computer. Thus, GIS is expensive for organizations with multipleoffices since all offices would require both computer and copy of theGIS software. Furthermore, all offices contribute to the maintenance ofthe central database requiring high network bandwidth. The presentinvention can reduce this cost and offer partial GIS functionality. Asingle server is maintained in a central location while remote sitesaccess the server over the World Wide Web. Complex software is notrequired on the client, only a Java enabled web browser. Thus, typicalPC can be used at the remote sites. However, the major problem oftransferring the large amount of data in a reasonable time remains to beaddressed. This problem is minimized by utilizing two differentapproaches offering multiple resolutions of the image and using datacompression. In many cases, GIS users want to determine different areaor same area in different time. This invention helps this situation byoffering the mosaic feature that user can combine different maps totogether to form a larger image for comparison or analysis purpose.

[0005] The present invention offers a choice of multiresolution imagesto the user; therefore, high-resolution images are transferred over theinternet only when the user requires such detailed images. The multipleresolution images are created using a wavelet transformation. A furtherbenefit of the wavelet transformation is that it reduces the typicallyhigh entropy of an image, thus, transforming the image to format highlycompressable using typical data compression algorithms. The wavelettransformation will generally be more efficient in entropy reductionthan other data transformations, since the localized representation ofthe data utilized two domains (time and scale) whereas othertransformations utilize only one domain. Once the data is transformedinto a wavelet data stream and compressed, the amount of data beingtransferred over World Wide Web is minimized.

[0006] This system comprises of a server process, a client process, aspatial database and a relational database. It presents the idea ofgeographical information access over the World Wide Web network usingcompression technology and data filtering—in the form of queries andmetadata—for efficient use of network bandwidth. In addition, the usercan access or change information using the tools provided inside theclient application.

[0007] General GIS features and capabilities can be provided with theclient application without loading the client machine. Commands arepassed to the server, which accesses the spatial and relationaldatabases to process the commands. The server retrieves the data and theresult is sent to the client application. Therefore, users can accessand use the features of the GIS server and its corresponding databasesusing a standard PC.

SUMMARY OF THE INVENTION

[0008] This present invention provides a system that applies the latesttechnology related to compression, rendering, and geographical dataprocessing to present an interactive interface to users and enables themto efficiently manipulate maps and queries for information over theWorld Wide Web.

[0009] The method includes a World Wide Web application, located on theclient, having a capability of decompression and resolution filteringfor decreasing the amount of data passing between the server and theclient. On the server side, the compression and the resolution filteringare implemented by using wavelet algorithm and compression algorithms.The compressed data is sent across the World Wide Web network to theclient application.

[0010] The client application separates the data into two types, vectordata and raster data. The raster data is the base map, which can beoverlayed with vector data. In order to easily manipulate thegeographical data elements from the map, the user accesses spatialinformation stored in the spatial database. Within the application,toolbars are provided for the user to edit the vector and other types ofdata on the client side before saving the changes to the database.

BRIEF DESCRIPTION OF THE DRAWING

[0011] The objects and features of the present invention will becomemore apparent and the invention itself will be best understood from thefollowing detailed description of the preferred embodiment when readwith reference to the accompanying drawing, wherein:

[0012]FIG. 1 illustrates an overall system of the present inventionincluding preferred and alternative embodiments of the presentinvention, in which:

[0013] Part 1. Geographical Map Image Storage is an archive to storegeographical map images.

[0014] Part 2. Wavelet Composer Engine is a software component thatcontains wavelet algorithm used to transform the image into waveletformat. The algorithm is widely used in compression area.

[0015] Part 3. Compression Engine is a software component to compressdata that is implemented using combination of mathematical algorithms.The algorithms comprises of two main algorithm called “Huffman Coding”and “Run Length Encoding” algorithms.

[0016] Part 4. Decompression Engine is a software component todecompress data that is implemented using combination of mathematicalalgorithms. The algorithms comprises of two main algorithm called“Huffman Coding” and “Run Length Encoding” algorithms.

[0017] Part 5. Wavelet Decomposer Engine is a software component thatcontains wavelet algorithm used to re-transform the wavelet format backto image.

[0018] Part 6. Spatial Information and Map Data Viewer is a softwarecomponent to display geographical map and information.

[0019] Part 7. Spatial Information and Map Editor is a softwarecomponent to modify geographical map and information.

[0020] Part 8. Spatial Database is a database to store spatialgeographical information.

[0021] Part 9. Management Information System is a database for storingmanagement information.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0022] Referring to FIG. 1, the Geographical Map Image Storage (Part 1)stores geographical map images or satellite images. It stores theoriginal image which is already registered by the satellite or othersource of images then it is transformed by the Wavelet Composer Engine(Part 2) which separates the image into layers according to variousresolutions creating a wavelet data stream. The user can select a rangeof resolutions that reduces the amount of data transferred over thenetwork. The wavelet algorithm uses interpolating technique thatcalculates using the two equations:

d _(1,1) =S _(0,21+1)−[9/16(S _(0,21) +S _(0,21)+2)−1/16(S _(0,21−2) +S_(0,21+4))+1/2]

S _(1,1) =S _(0,21)+[9/32(d _(1,1−1) +d _(1,1))−1/32(d _(1,1−2) +d_(1,1+1))+1/2]

[0023] In addition, the Compression Engine (Part 3) compresses thewavelet data stream by using Run Length Encoding and Huffman Coding toobtain the smallest number of bytes before passing the data through thenetwork. Run Length Encode counts on how many continuous data bytes andadd an overhead byte to indicate that duplicate number of bytes. HuffmanCoding creates a tree of frequent use symbols and map keys to substitutethat symbol. The Huffman Coding works differently on the bytesindicating number of continuous and the data bytes. When a clientprocess receives the compressed data stream from the network, theDecompression Engine (Part 4) decompresses the data, converting it backto a wavelet data stream. The Wavelet Decomposer Engine (Part 5) thenreassembles the wavelet data stream into the original image of the map.Next, the Spatial Information and Map Viewer (Part 6) renders the map.The vector data stored in the Spatial Database (Part 8) is typicallydata from the GIS and is used to populate the Spatial Database (Part 8)synchronized with the MIS (Part 9) by using geo-codes, which uniquelyidentifies each geographic entity and links linking the spatial data toinformation in the MIS (Part 9). The Spatial Database is a database withfeatures of spatial functions and operators, which help user tocalculate basic operation and reduce amount of data passing to the user.The MIS is an information base using normal database management system.Also metadata is used in the spatial database to provide intelligentsearching capabilities. SQL Queries are used to obtain the vector datafrom the Spatial Database (Part 8) and may include geometric operatorsavailable in the spatial database to determine which data is required.The vector data is then rendered as polygons, paths, or points dependingon the nature of the geometric entity being rendered. The spatialInformation and Map Editor (Part 7) is similar to the SpatialInformation and Map Viewer (Part 6) but allows the user to change thevector data.

[0024] Part 1 to Part 3 are located in the server machine while Part 8to Part 9 are located in the appropriate databases on the server. Part 4to Part 7 are used to display or edit the result and are located in theclient machine. The server is responsible for querying vector data andloading images in response to client application requests. When theserver receives a load image request, it will find and load the imagefrom the Geographical Map Image Storage (Part 1). To create the multipleresolutions, the image is passed to the Wavelet Composer Engine (Part2), which transforms the image into a wavelet data stream. The waveletdata stream is then sent to the Compression Engine (Part 3), which usesa combination of compression algorithms. Each compressed level ofresolution is stored in a file for future reference.

[0025] When the server receives a query request, it will execute thequery in either the spatial database or relational database, dependingon the nature of the query. The query is defined by the client and issent as part of the request to the server. A database connectioninterface is used to communicate with the database, which returns theresult of the query to the server. The result is filtered and searchedfaster by using metadata and then it is compressed using compressionalgorithms before it is sent to the client.

[0026] The client is composed of several components that not onlyprocesses the data communication with the server, but also presents agraphical user interface (GUI) allowing the user to display andmanipulate map data from a GIS. For example, it can display a satelliteimage of a city with additional layers of buildings, roads, and rivers.

[0027] The client has two main components, a data processing component,and a GUI component. The data processing component is responsible forsubmitting requests to the server, and processing the returned results.After the client sends a load image request, it waits for the result toreturn and then sends the data to the decompression engine (Part 4), tobe decompressed. At this stage, the data is a wavelet data stream and issent to the Wavelet Decomposer Engine (Part 5) to reassemble the datainto the original image. Finally the restored image is sent to a datacache from which the spatial information and map data viewer (Part 6) orthe Spatial Information and Data Editor (Part 7) can access it.

[0028] For a query request, the data processing component first formsthe query and then sends the request. The returned result is sent to theDecompression Engine (Part 4) and then sent to the data cache for accessby either the Spatial Information and Map Data Viewer (Part 6) or theSpatial Information and Map Data Editor (Part 7).

[0029] These query requests include both MIS requests, and SpatialDatabase (Part 8) requests. The MIS information is simply displayed inan appropriate manner. The spatial data returned by a request istypically represented in an individual layer, which contains a set ofvectors, or points that have some geographic meaning.

[0030] The GUI component runs as a java applet on a web browser and ispart of both the Spatial Information and a Map Data Viewer (Part 6) andthe Spatial Information and a Map Data Editor (Part 7). It also containsDecompression Engine and Wavelet Decomposor Engine in order toretransform the compressed data back to the original data. The GUI hasthree windows to view various levels of detail of the image map. Atop-left window presents a view of the whole map divided into map cells,the user can click a cell and the area of the map contained in the cellis displayed in the bottom-left window. The applet contains PartThiswindow is a zoom and pan window in which a user can click the left orright mouse button to zoom in or out respectively. The user can alsodrag the mouse to pan around the map. A detail window is displayed as alarge window on the right showing the map and vector data for theselected area on the zoom and pan window.

[0031] Layers represent the data of the detail window, including the mapimage and the vector data. A legend to the right of the detail mapindicates the available layers and categorizes the vector data by color.Checkboxes are included in the legend, which allow the user to toggleeach layer's visibility.

[0032] The console area shows the sizes of the full image, thecompressed image, and approximate size of the next zoom level. It alsodisplays the UTM coordinates when the user moves the cursor pointer overthe detail window. Finally a scale bar indicates the scale of the imagein the detail window.

[0033] The two most important components of the Spatial Information andMap Data Viewer (Part 6) and the Spatial Information and Map Data Editor(Part 7) are the raster component and the vector component.

[0034] The raster component is responsible for displaying the map aswell as the information corresponding to the detail inside the map suchas UTM coordinates, the date and time that the map was created, and themap resolution. Each level of the map has its own scale that will bedisplayed on the scale bar to indicate the distance ratio. In addition,users can move the mouse cursor onto the map and see the UTM coordinatesof that point. The raster map is the base map with all additional layersbeing rendered on top of it. However, it can also be toggled on or off.

[0035] The Geographical Map Image Storage (Part 1) maintains severalimages for the various areas available for display. In most cases, asingle image does not cover enough area to be useful to users.Therefore, this invention implements a mosaic feature. This featuredetermines the image files that cover the area being requested andseamlessly joins them together to form a larger image.

[0036] The unique features of the raster component are the interactivepan and the zoom. This means that when the user pans or zooms, a new webpage is not loaded. Instead, only the detailed image in the rasterviewer is updated. This not only saves time from downloading all theelements of the web page, but also gives the user a pleasant interfacesince only the single image changes not the whole page.

[0037] The vector component is capable of rendering several differenttypes of vector data. These types include polygon data (both filled andoutline), path or line data, and point data. The vector data is storedin the Spatial Database (Part 8), which allows geometric operations tobe performed on the vector data. For example, the database can determineif a point is within one of the polygons that are stored in one of itstables. Such capability allows the user to perform simple queries to thedatabase using mouse clicks on the map. Thus, storing the vector data inthe Spatial Database is very useful.

[0038] The vector data are rendered on top of the map using separatelayers. For example, the roads for a map would be rendered as a singlelayer, while the waterways of the map would be rendered in anotherseparate layer. The layers are implemented such that each layer queriesthe Spatial Database (Part 8) for the vector data required to berendered. The data is returned in UTM coordinates that are thentransformed to screen coordinates, and finally the vector data isrendered on the map.

[0039] Each layer also has a state variable that controls the visibilityof the layer. With this feature, part of the graphical user interfacecan be a switch that will toggle the visibility of the particular layerof vector data. This gives the user the capability of removing data fromthe map when the area of interest is too crowded with data.

[0040] It should be noted that some vector data is not stored in theSpatial Database (Part 8). For example, the UTM grid can easily begenerated from the bounding box of the map. Furthermore, the gridlineswould be different for each level of zoom in the map. Therefore, it isnot necessary to store the grid lines (one set for each zoom level) inthe Spatial Database (Part 8), but generates them as a separate layer.

[0041] The Spatial Information and Map Data Editor (Part 7) is similarto the Spatial Information and Map Data Viewer (Part 6) except that ithas limited zoom capabilities and additional GUI features to implementadditions, deletions and modifications to both the Spatial Database(Part 8) and MIS (Part 9), the Spatial Information and Map Editor (Part7) has a single window that displays the map and vector data in the sameresolution as that of the detailed image of the Spatial Information andMap Data Viewer (Part 6). The user has the choice of zooming in oneextra level for more accurate digitizing.

[0042] While the particular embodiments of this invention have beenshown in the drawings and described above, it will be apparent that manychanges may be made in the form, arrangement and positioning of thevarious elements of the combination. In consideration thereof, it shouldbe understood that preferred embodiments of this invention disclosedherein are intended to be illustrative only and not intended to limitthe scope of the invention.

What is claimed is:
 1. A method for displaying and manipulatinggeographical information using World Wide Web technology, the stepscomprising: (a) means for retrieving geographical map images from ageographical map image storage database, the geographical map imagescontain individual raster images of the map divided from the whole mapsheet or the satellite image; (b) means for transforming the rasterimages into wavelet data stream which is completely retransformable backto the original raster images; (c) means for compressing the waveletdata format stream into the compressed data stream; (d) means fortransmitting the compressed data stream over the network to the clientside; (e) means for decompressing the compressed data stream intowavelet data stream; (f) means for retransforming the wavelet datastream into the raster images; (g) means for displaying the raster imageusing one of either spatial information and a map viewer or spatialinformation and a map editor; (h) means for analyzing user requirementand sending the suitable query to a spatial database; (i) means forretrieving vector data comprising of geographical elements from saidspatial database; (j) means for retrieving information from said spatialdatabase using metadata and geocode of the coordinate related with thegeographical elements on the vector data; (k) means for editinginformation or vector data using said spatial information and a mapeditor; (l) means for storing geographical information in a managementinformation system; (m) means for storing vector data in said spatialdatabase; and (n) means for storing geographical raster map or satelliteimage in said geographical map image storage database.
 2. The method ofclaim 1 , wherein the geographical map can be any form of map includinga registered satellite image.
 3. The method of claim 1 , wherein thewavelet transformation is used to transform said map into variousresolution maps.
 4. The method of claim 1 , wherein said variousresolution maps can be filtered for only desired resolution.
 5. Themethod of claim 4 , wherein filtered maps are compressed by usingcompression algorithms.
 6. The method of claim 5 , wherein compresseddata is transferred over World Wide Web to the client by using aninternet network.
 7. The method of claim 6 , wherein said compresseddata is sent across the World Wide Web to a client process anddecompressed into said wavelet data format.
 8. The method of claim 7 ,wherein said wavelet format data is retransformed into a geographicalmap.
 9. The method of claim 1 , wherein said image data is sent todisplay on the spatial information and map viewer at the client sideunder control of the spatial information and map viewer, comprising thesteps of: (a) displaying the spatial information and map, (b) receivinguser input to zoom, pan the image; and (c) receiving user input to queryinformation from the spatial database and the MIS.
 10. The method ofclaim 1 , wherein user requirement is sent as a query to retrieve datafrom spatial database under control of the spatial database, comprisingthe steps of: (a) storing vector data; (b) storing map geocode thatlinks to the information in the MIS; (c) sending geocode to the MIS formore information; and (d) sending vector data to the spatial informationmap viewer or the spatial information map editor.
 11. The method ofclaim 10 , wherein query is used with metadata to search for requireddata.
 12. The method of claim 11 , wherein metadata explains the meaningof data as well as its logical structure.
 13. The method of claim 11 ,wherein the required data is compressed and sent back to the client. 14.The method of claim 1 , wherein the spatial information and the mapeditor is an apparatus for editing geographical information and mapunder control of the spatial information and map editor, comprising thesteps of: (a) displaying the spatial information and map; (b) receivinguser input to zoom, pan the image; (c) receiving user input to queryinformation from the spatial database; (d) editing geographicalinformation on each element on the map; (e) editing geographical map;(f) storing changed information in management information system; (g)storing changed vector data in the spatial database; (h) storing newgeographical image map or registered satellite image in geographical mapimage storage; and (i) retrieving the spatial database.
 15. A system fordisplaying and manipulating geographical information using World WideWeb technology, comprising: (a) means for retrieving geographical mapimages from a geographical map image storage database, the geographicalmap images contain individual raster images of the map divided from thewhole map sheet or the satellite image; (b) means for transforming theraster images into wavelet data stream which is completelyretransformable back to the original raster images; (c) means forcompressing the wavelet data format stream into the compressed datastream; (d) means for transmitting the compressed data stream over thenetwork to the client side; (e) means for decompressing the compresseddata stream into wavelet data stream; (f) means for retransforming thewavelet data stream into the raster images; (g) means for displaying theraster image using one of either spatial information and a map viewer orspatial information and a map editor; (h) means for analyzing userrequirement and sending the suitable query to a spatial database; (i)means for retrieving vector data comprising of geographical elementsfrom said spatial database; (j) means for retrieving information fromsaid spatial database using metadata and geocode of the coordinaterelated with the geographical elements on the vector data; (k) means forediting information or vector data using said spatial information and amap editor; (l) means for storing geographical information in amanagement information system; (m) means for storing vector data in saidspatial database; and (n) means for storing geographical raster map orsatellite image in said geographical map image storage database.
 16. Thesystem of claim 15 , wherein the geographical map can be any form of mapincluding a registered satellite image.
 17. The system of claim 15 ,wherein the wavelet transformation is used to transform said map intovarious resolution maps.
 18. The system of claim 15 , wherein saidvarious resolution maps can be filtered for only desired resolution. 19.The system of claim 18 , wherein filtered maps are compressed by usingcompression algorithms.
 20. The system of claim 19 , wherein compresseddata is transferred over World Wide Web to the client by using aninternet network.
 21. The system of claim 20 , wherein said compresseddata is sent across the World Wide Web to a client process anddecompressed into said wavelet data format.
 22. The system of claim 21 ,wherein said wavelet format data is retransformed into a geographicalmap.
 23. The system of claim 15 , wherein said image data is sent todisplay on the spatial information and map viewer at the client sideunder control of the spatial information and map viewer, comprising thesteps of: (a) displaying the spatial information and map, (b) receivinguser input to zoom, pan the image; and (c) receiving user input to queryinformation from the spatial database and the MIS.
 24. The system ofclaim 15 , wherein user requirement is sent as a query to retrieve datafrom spatial database under control of the spatial database, comprisingthe steps of: (a) storing vector data; (b) storing map geocode thatlinks to the information in the MIS; (c) sending geocode to the MIS formore information; and (d) sending vector data to the spatial informationmap viewer or the spatial information map editor.
 25. The system ofclaim 24 , wherein query is used with metadata to search for requireddata.
 26. The system of claim 25 , wherein metadata explains the meaningof data as well as its logical structure.
 27. The system of claim 25 ,wherein the required data is compressed and sent back to the client. 28.The system of claim 15 , wherein the spatial information and the mapeditor is an apparatus for editing geographical information and mapunder control of the spatial information and map editor, comprising: (a)means for displaying the spatial information and map; (b) means forreceiving user input to zoom, pan the image; (c) means for receivinguser input to query information from the spatial database; (d) means forediting geographical information on each element on the map; (e) meansfor editing geographical map; (f) means for storing changed informationin management information system; (g) means for storing changed vectordata in the spatial database; (h) means for storing new geographicalimage map or registered satellite image in geographical map imagestorage; and (i) means for retrieving the spatial database.